<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PxVehicleSuspensionData Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><img alt="Logo" src="PhysXLogoBlack.png"/></td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('classPxVehicleSuspensionData.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pri-methods">Private Member Functions</a> &#124;
<a href="#pri-attribs">Private Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classPxVehicleSuspensionData-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">PxVehicleSuspensionData Class Reference<div class="ingroups"><a class="el" href="group__vehicle.html">Vehicle</a></div></div>  </div>
</div><!--header-->
<div class="contents">

<p><code>#include &lt;<a class="el" href="PxVehicleComponents_8h_source.html">PxVehicleComponents.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a8edf19ece4a7b7c32af4aa823e98c434"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a8edf19ece4a7b7c32af4aa823e98c434">PxVehicleSuspensionData</a> ()</td></tr>
<tr class="separator:a8edf19ece4a7b7c32af4aa823e98c434"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab592368670a771f3c2d333c7a720b909"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#ab592368670a771f3c2d333c7a720b909">getRecipMaxCompression</a> () const</td></tr>
<tr class="memdesc:ab592368670a771f3c2d333c7a720b909"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reciprocal of maximum compression.  <a href="#ab592368670a771f3c2d333c7a720b909">More...</a><br /></td></tr>
<tr class="separator:ab592368670a771f3c2d333c7a720b909"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0c6ba3a78ee6a891d6122019c0feee0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#ac0c6ba3a78ee6a891d6122019c0feee0">getRecipMaxDroop</a> () const</td></tr>
<tr class="memdesc:ac0c6ba3a78ee6a891d6122019c0feee0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Reciprocal of maximum droop.  <a href="#ac0c6ba3a78ee6a891d6122019c0feee0">More...</a><br /></td></tr>
<tr class="separator:ac0c6ba3a78ee6a891d6122019c0feee0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bec1ac8b8808407d0af0accfcc21e57"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a2bec1ac8b8808407d0af0accfcc21e57">setMassAndPreserveNaturalFrequency</a> (const PxReal newSprungMass)</td></tr>
<tr class="memdesc:a2bec1ac8b8808407d0af0accfcc21e57"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a new sprung mass for the suspension and modify the spring strength so that the natural frequency of the spring is preserved.  <a href="#a2bec1ac8b8808407d0af0accfcc21e57">More...</a><br /></td></tr>
<tr class="separator:a2bec1ac8b8808407d0af0accfcc21e57"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:ad6c229a583ec71fa2f3192de790528a7"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#ad6c229a583ec71fa2f3192de790528a7">mSpringStrength</a></td></tr>
<tr class="memdesc:ad6c229a583ec71fa2f3192de790528a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Spring strength of suspension unit.  <a href="#ad6c229a583ec71fa2f3192de790528a7">More...</a><br /></td></tr>
<tr class="separator:ad6c229a583ec71fa2f3192de790528a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd5b02e608d8d8e06ec7932ccbe514de"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#abd5b02e608d8d8e06ec7932ccbe514de">mSpringDamperRate</a></td></tr>
<tr class="memdesc:abd5b02e608d8d8e06ec7932ccbe514de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Spring damper rate of suspension unit.  <a href="#abd5b02e608d8d8e06ec7932ccbe514de">More...</a><br /></td></tr>
<tr class="separator:abd5b02e608d8d8e06ec7932ccbe514de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a41931d05cc3610c523139d4f975cced6"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a41931d05cc3610c523139d4f975cced6">mMaxCompression</a></td></tr>
<tr class="memdesc:a41931d05cc3610c523139d4f975cced6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum compression allowed by suspension spring.  <a href="#a41931d05cc3610c523139d4f975cced6">More...</a><br /></td></tr>
<tr class="separator:a41931d05cc3610c523139d4f975cced6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20d5e1ae07792ecf7f0180c3456dd5ce"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a20d5e1ae07792ecf7f0180c3456dd5ce">mMaxDroop</a></td></tr>
<tr class="memdesc:a20d5e1ae07792ecf7f0180c3456dd5ce"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum elongation allowed by suspension spring.  <a href="#a20d5e1ae07792ecf7f0180c3456dd5ce">More...</a><br /></td></tr>
<tr class="separator:a20d5e1ae07792ecf7f0180c3456dd5ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a23f96767e47ea394bbb10ee597f2d9d3"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a23f96767e47ea394bbb10ee597f2d9d3">mSprungMass</a></td></tr>
<tr class="memdesc:a23f96767e47ea394bbb10ee597f2d9d3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Mass of vehicle that is supported by suspension spring.  <a href="#a23f96767e47ea394bbb10ee597f2d9d3">More...</a><br /></td></tr>
<tr class="separator:a23f96767e47ea394bbb10ee597f2d9d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a009eee43a101ae543e3b1fc551792653"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a009eee43a101ae543e3b1fc551792653">mCamberAtRest</a></td></tr>
<tr class="memdesc:a009eee43a101ae543e3b1fc551792653"><td class="mdescLeft">&#160;</td><td class="mdescRight">Camber angle (in radians) of wheel when the suspension is at its rest position.  <a href="#a009eee43a101ae543e3b1fc551792653">More...</a><br /></td></tr>
<tr class="separator:a009eee43a101ae543e3b1fc551792653"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbfa04e080c4318d167019151cd9fc23"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#afbfa04e080c4318d167019151cd9fc23">mCamberAtMaxCompression</a></td></tr>
<tr class="memdesc:afbfa04e080c4318d167019151cd9fc23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Camber angle (in radians) of wheel when the suspension is at maximum compression.  <a href="#afbfa04e080c4318d167019151cd9fc23">More...</a><br /></td></tr>
<tr class="separator:afbfa04e080c4318d167019151cd9fc23"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a057401ec58e0e0515b70e1d23c840cb7"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a057401ec58e0e0515b70e1d23c840cb7">mCamberAtMaxDroop</a></td></tr>
<tr class="memdesc:a057401ec58e0e0515b70e1d23c840cb7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Camber angle (in radians) of wheel when the suspension is at maximum droop.  <a href="#a057401ec58e0e0515b70e1d23c840cb7">More...</a><br /></td></tr>
<tr class="separator:a057401ec58e0e0515b70e1d23c840cb7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
Private Member Functions</h2></td></tr>
<tr class="memitem:aa2b0dc4c5088044820022485ca5f3986"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#aa2b0dc4c5088044820022485ca5f3986">isValid</a> () const</td></tr>
<tr class="separator:aa2b0dc4c5088044820022485ca5f3986"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
Private Attributes</h2></td></tr>
<tr class="memitem:a05c9ff8df5782ffefdb90595b20efbbf"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a05c9ff8df5782ffefdb90595b20efbbf">mRecipMaxCompression</a></td></tr>
<tr class="memdesc:a05c9ff8df5782ffefdb90595b20efbbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cached value of 1.0f/mMaxCompression.  <a href="#a05c9ff8df5782ffefdb90595b20efbbf">More...</a><br /></td></tr>
<tr class="separator:a05c9ff8df5782ffefdb90595b20efbbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca07e38db13471eb6d3b54cb421aacfc"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#aca07e38db13471eb6d3b54cb421aacfc">mRecipMaxDroop</a></td></tr>
<tr class="memdesc:aca07e38db13471eb6d3b54cb421aacfc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Cached value of 1.0f/mMaxDroop.  <a href="#aca07e38db13471eb6d3b54cb421aacfc">More...</a><br /></td></tr>
<tr class="separator:aca07e38db13471eb6d3b54cb421aacfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa84939cb947f9b7d600564a64982975d"><td class="memItemLeft" align="right" valign="top">PxReal&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#aa84939cb947f9b7d600564a64982975d">mPad</a> [2]</td></tr>
<tr class="separator:aa84939cb947f9b7d600564a64982975d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a4c2a2bf5a268389976a6f3c6ffeb1806"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxVehicleSuspensionData.html#a4c2a2bf5a268389976a6f3c6ffeb1806">PxVehicleWheels4SimData</a></td></tr>
<tr class="separator:a4c2a2bf5a268389976a6f3c6ffeb1806"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a8edf19ece4a7b7c32af4aa823e98c434"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8edf19ece4a7b7c32af4aa823e98c434">&#9670;&nbsp;</a></span>PxVehicleSuspensionData()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">PxVehicleSuspensionData::PxVehicleSuspensionData </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="ab592368670a771f3c2d333c7a720b909"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab592368670a771f3c2d333c7a720b909">&#9670;&nbsp;</a></span>getRecipMaxCompression()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> PxReal PxVehicleSuspensionData::getRecipMaxCompression </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reciprocal of maximum compression. </p>
<dl class="section note"><dt>Note</dt><dd>Not necessary to set this value because it is set by <a class="el" href="classPxVehicleWheelsSimData.html#a2d919fecb713d371d2624e3b5b37053b" title="Set the suspension data of the idth wheel. ">PxVehicleWheelsSimData::setSuspensionData</a></dd></dl>
<p><b>Range:</b> [0, PX_MAX_F32)<br />
 </p>

</div>
</div>
<a id="ac0c6ba3a78ee6a891d6122019c0feee0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac0c6ba3a78ee6a891d6122019c0feee0">&#9670;&nbsp;</a></span>getRecipMaxDroop()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="group__foundation.html#ga6a774eed3cad34b0f636332a3d28c6bb">PX_FORCE_INLINE</a> PxReal PxVehicleSuspensionData::getRecipMaxDroop </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Reciprocal of maximum droop. </p>
<dl class="section note"><dt>Note</dt><dd>Not necessary to set this value because it is set by <a class="el" href="classPxVehicleWheelsSimData.html#a2d919fecb713d371d2624e3b5b37053b" title="Set the suspension data of the idth wheel. ">PxVehicleWheelsSimData::setSuspensionData</a></dd></dl>
<p><b>Range:</b> [0, PX_MAX_F32)<br />
 </p>

</div>
</div>
<a id="aa2b0dc4c5088044820022485ca5f3986"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2b0dc4c5088044820022485ca5f3986">&#9670;&nbsp;</a></span>isValid()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">bool PxVehicleSuspensionData::isValid </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a2bec1ac8b8808407d0af0accfcc21e57"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2bec1ac8b8808407d0af0accfcc21e57">&#9670;&nbsp;</a></span>setMassAndPreserveNaturalFrequency()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void PxVehicleSuspensionData::setMassAndPreserveNaturalFrequency </td>
          <td>(</td>
          <td class="paramtype">const PxReal&#160;</td>
          <td class="paramname"><em>newSprungMass</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Set a new sprung mass for the suspension and modify the spring strength so that the natural frequency of the spring is preserved. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">newSprungMass</td><td>is the new mass that the suspension spring will support. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a id="a4c2a2bf5a268389976a6f3c6ffeb1806"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c2a2bf5a268389976a6f3c6ffeb1806">&#9670;&nbsp;</a></span>PxVehicleWheels4SimData</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">friend class PxVehicleWheels4SimData</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="afbfa04e080c4318d167019151cd9fc23"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afbfa04e080c4318d167019151cd9fc23">&#9670;&nbsp;</a></span>mCamberAtMaxCompression</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mCamberAtMaxCompression</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Camber angle (in radians) of wheel when the suspension is at maximum compression. </p>
<dl class="section note"><dt>Note</dt><dd>For compressed suspensions the camber angle is a linear interpolation of mCamberAngleAtRest and mCamberAtMaxCompression</dd>
<dd>
Specified in radians.</dd></dl>
<p><b>Range:</b> [-pi/2, pi/2]<br />
 </p>

</div>
</div>
<a id="a057401ec58e0e0515b70e1d23c840cb7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a057401ec58e0e0515b70e1d23c840cb7">&#9670;&nbsp;</a></span>mCamberAtMaxDroop</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mCamberAtMaxDroop</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Camber angle (in radians) of wheel when the suspension is at maximum droop. </p>
<dl class="section note"><dt>Note</dt><dd>For extended suspensions the camber angle is linearly interpolation of mCamberAngleAtRest and mCamberAtMaxDroop</dd>
<dd>
Specified in radians.</dd></dl>
<p><b>Range:</b> [-pi/2, pi/2]<br />
 </p>

</div>
</div>
<a id="a009eee43a101ae543e3b1fc551792653"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a009eee43a101ae543e3b1fc551792653">&#9670;&nbsp;</a></span>mCamberAtRest</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mCamberAtRest</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Camber angle (in radians) of wheel when the suspension is at its rest position. </p>
<dl class="section note"><dt>Note</dt><dd>Specified in radians.</dd></dl>
<p><b>Range:</b> [-pi/2, pi/2]<br />
 </p>

</div>
</div>
<a id="a41931d05cc3610c523139d4f975cced6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a41931d05cc3610c523139d4f975cced6">&#9670;&nbsp;</a></span>mMaxCompression</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mMaxCompression</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Maximum compression allowed by suspension spring. </p>
<dl class="section note"><dt>Note</dt><dd>Specified in metres (m).</dd></dl>
<p><b>Range:</b> [0, PX_MAX_F32)<br />
 </p>

</div>
</div>
<a id="a20d5e1ae07792ecf7f0180c3456dd5ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a20d5e1ae07792ecf7f0180c3456dd5ce">&#9670;&nbsp;</a></span>mMaxDroop</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mMaxDroop</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Maximum elongation allowed by suspension spring. </p>
<dl class="section note"><dt>Note</dt><dd>Specified in metres (m).</dd></dl>
<p><b>Range:</b> [0, PX_MAX_F32)<br />
 </p>

</div>
</div>
<a id="aa84939cb947f9b7d600564a64982975d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa84939cb947f9b7d600564a64982975d">&#9670;&nbsp;</a></span>mPad</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mPad[2]</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

</div>
</div>
<a id="a05c9ff8df5782ffefdb90595b20efbbf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a05c9ff8df5782ffefdb90595b20efbbf">&#9670;&nbsp;</a></span>mRecipMaxCompression</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mRecipMaxCompression</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Cached value of 1.0f/mMaxCompression. </p>
<dl class="section note"><dt>Note</dt><dd>Not necessary to set this value because it is set by <a class="el" href="classPxVehicleWheelsSimData.html#a2d919fecb713d371d2624e3b5b37053b" title="Set the suspension data of the idth wheel. ">PxVehicleWheelsSimData::setSuspensionData</a> </dd></dl>

</div>
</div>
<a id="aca07e38db13471eb6d3b54cb421aacfc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca07e38db13471eb6d3b54cb421aacfc">&#9670;&nbsp;</a></span>mRecipMaxDroop</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mRecipMaxDroop</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">private</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Cached value of 1.0f/mMaxDroop. </p>
<dl class="section note"><dt>Note</dt><dd>Not necessary to set this value because it is set by <a class="el" href="classPxVehicleWheelsSimData.html#a2d919fecb713d371d2624e3b5b37053b" title="Set the suspension data of the idth wheel. ">PxVehicleWheelsSimData::setSuspensionData</a> </dd></dl>

</div>
</div>
<a id="abd5b02e608d8d8e06ec7932ccbe514de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd5b02e608d8d8e06ec7932ccbe514de">&#9670;&nbsp;</a></span>mSpringDamperRate</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mSpringDamperRate</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Spring damper rate of suspension unit. </p>
<dl class="section note"><dt>Note</dt><dd>Specified in kilograms per second (kg s^-1).</dd></dl>
<p><b>Range:</b> [0, PX_MAX_F32)<br />
 </p>

</div>
</div>
<a id="ad6c229a583ec71fa2f3192de790528a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6c229a583ec71fa2f3192de790528a7">&#9670;&nbsp;</a></span>mSpringStrength</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mSpringStrength</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Spring strength of suspension unit. </p>
<dl class="section note"><dt>Note</dt><dd>Specified in kilograms per second-squared (kg s^-2).</dd></dl>
<p><b>Range:</b> [0, PX_MAX_F32)<br />
 </p>

</div>
</div>
<a id="a23f96767e47ea394bbb10ee597f2d9d3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a23f96767e47ea394bbb10ee597f2d9d3">&#9670;&nbsp;</a></span>mSprungMass</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">PxReal PxVehicleSuspensionData::mSprungMass</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Mass of vehicle that is supported by suspension spring. </p>
<dl class="section note"><dt>Note</dt><dd>Specified in kilograms (kg).</dd>
<dd>
Each suspension is guaranteed to generate an upwards force of |gravity|*mSprungMass along the suspension direction when the wheel is perfectly at rest and sitting at the rest pose defined by the wheel centre offset.</dd>
<dd>
The sum of the sprung masses of all suspensions of a vehicle should match the mass of the <a class="el" href="classPxRigidDynamic.html" title="PxRigidDynamic represents a dynamic rigid simulation object in the physics SDK. ">PxRigidDynamic</a> associated with the vehicle. When this condition is satisfied for a vehicle on a horizontal plane the wheels of the vehicle are guaranteed to sit at the rest pose defined by the wheel centre offset. The mass matching condition is not enforced.</dd>
<dd>
As the wheel compresses or elongates along the suspension direction the force generated by the spring is F = |gravity|*mSprungMass + deltaX*mSpringStrength + deltaXDot*mSpringDamperRate where deltaX is the deviation from the defined rest pose and deltaXDot is the velocity of the sprung mass along the suspension direction. In practice, deltaXDot is computed by comparing the current and previous deviation from the rest pose and dividing the difference by the simulation timestep.</dd>
<dd>
If a single suspension spring is hanging in the air and generates zero force the remaining springs of the vehicle will necessarily sit in a compressed configuration. In summary, the sum of the remaining suspension forces cannot balance the downwards gravitational force acting on the vehicle without extra force arising from the deltaX*mSpringStrength force term.</dd>
<dd>
Theoretically, a suspension spring should generate zero force at maximum elongation and increase linearly as the suspension approaches the rest pose. <a class="el" href="classPxVehicleSuspensionData.html">PxVehicleSuspensionData</a> will only enforce this physical law if the spring is configured so that |gravity|*mSprungMass == mMaxDroop*mSpringStrength. To help decouple vehicle handling from visual wheel positioning this condition is not enforced. In practice, the value of |gravity|*mSprungMass + deltaX*mSpringStrength is clamped at zero to ensure it never falls negative.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__vehicle.html#gabfa604162177064bc35b16627f2053d1" title="Compute the sprung masses of the suspension springs given (i) the number of sprung masses...">PxVehicleComputeSprungMasses</a>, <a class="el" href="classPxVehicleWheelsSimData.html#a7f5a27dafbbf58ad01c0172e03349d24" title="Set the offset from the rigid body centre of mass to the centre of the idth wheel. ">PxVehicleWheelsSimData::setWheelCentreOffset</a>, <a class="el" href="classPxVehicleSuspensionData.html#ad6c229a583ec71fa2f3192de790528a7" title="Spring strength of suspension unit. ">PxVehicleSuspensionData::mSpringStrength</a>, <a class="el" href="classPxVehicleSuspensionData.html#abd5b02e608d8d8e06ec7932ccbe514de" title="Spring damper rate of suspension unit. ">PxVehicleSuspensionData::mSpringDamperRate</a>, <a class="el" href="classPxVehicleSuspensionData.html#a20d5e1ae07792ecf7f0180c3456dd5ce" title="Maximum elongation allowed by suspension spring. ">PxVehicleSuspensionData::mMaxDroop</a></dd></dl>
<p><b>Range:</b> [0, PX_MAX_F32)<br />
 </p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="PxVehicleComponents_8h_source.html">PxVehicleComponents.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="classPxVehicleSuspensionData.html">PxVehicleSuspensionData</a></li>
    <li class="footer">Copyright &copy; 2008-2021 NVIDIA Corporation, 2788 San Tomas Expressway, Santa Clara, CA 95051 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a></li>
  </ul>
</div>
</body>
</html>
